public class Main1 {
    public static void main(String[] args) {
        long n = 202420242024L; // 第 n 个数
        long result = findNthNumber(n);
        System.out.println(result);
    }

    private static long findNthNumber(long n) {
        // 20 和 24 的最小公倍数
        long lcm = 120;
        // 计算 20 的倍数、24 的倍数、120 的倍数的数量
        long count20 = n / 20;
        long count24 = n / 24;
        long count120 = n / lcm;

        // 使用容斥原理计算满足条件的数的数量
        long total = count20 + count24 - count120;

        // 找到第 n 个数
        long low = 1;
        long high = Long.MAX_VALUE;

        while (low < high) {
            long mid = low + (high - low) / 2;
            long cnt = mid / 20 + mid / 24 - mid / lcm;

            if (cnt < n) {
                low = mid + 1;
            } else {
                high = mid;
            }
        }

        return low;
    }
}